package com.ruoyi.project.digital.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

import java.util.Date;

/**
 * 打印申请对象 t_wechat_apply
 *
 * @author ruoyi
 * @date 2020-12-17
 */
public class Apply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 医院ID */
    @Excel(name = "医院ID")
    private Long hospitalId;

    /** 申请人ID */
    @Excel(name = "申请人ID")
    private Long userId;

    /** 姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 性别  0 女 1 男 */
    @Excel(name = "性别  0 女 1 男")
    private Integer sex;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String cardNo;

    /** 出院证号 */
    @Excel(name = "出院证号")
    private String hospitalCardNo;

    /** 收件人 */
    @Excel(name = "收件人")
    private String receiveName;

    /** 收件人手机号 */
    @Excel(name = "收件人手机号")
    private String receiveMobile;

    /** 省 */
    @Excel(name = "省")
    private String province;

    /** 市 */
    @Excel(name = "市")
    private String city;

    /** 县 */
    @Excel(name = "县")
    private String county;

    /**
     * 身份证正面
     */
    private String  frontImagPath;
    /**
     * 身份证背面
     */
    private String backImagePath;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String addressDetails;

    /** 快递单号 */
    @Excel(name = "快递单号")
    private String expressNo;

    /** 申请编号 */
    @Excel(name = "申请编号")
    private String applyNo;

    /** 更新者 */
    @Excel(name = "更新者")
    private Long updateId;

    private String pickWay;

    private String  printType;

    /** 申请状态 已申请、已拒绝、待支付、已支付、已邮寄 */
    @Excel(name = "申请状态 已申请、已拒绝、待支付、已支付、已邮寄")
    private Integer status;
    /** 系统userId*/
    private Long sysUserId;

    private String hospitalName;

    private String remark;

    private String startapplyTime;

    private String endapplyTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;


    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setHospitalId(Long hospitalId)
    {
        this.hospitalId = hospitalId;
    }

    public Long getHospitalId()
    {
        return hospitalId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setSex(Integer sex)
    {
        this.sex = sex;
    }

    public Integer getSex()
    {
        return sex;
    }
    public void setCardNo(String cardNo)
    {
        this.cardNo = cardNo;
    }

    public String getCardNo()
    {
        return cardNo;
    }
    public void setHospitalCardNo(String hospitalCardNo)
    {
        this.hospitalCardNo = hospitalCardNo;
    }

    public String getHospitalCardNo()
    {
        return hospitalCardNo;
    }
    public void setReceiveName(String receiveName)
    {
        this.receiveName = receiveName;
    }

    public String getReceiveName()
    {
        return receiveName;
    }
    public void setReceiveMobile(String receiveMobile)
    {
        this.receiveMobile = receiveMobile;
    }

    public String getReceiveMobile()
    {
        return receiveMobile;
    }
    public void setProvince(String province)
    {
        this.province = province;
    }

    public String getProvince()
    {
        return province;
    }
    public void setCity(String city)
    {
        this.city = city;
    }

    public String getCity()
    {
        return city;
    }
    public void setCounty(String county)
    {
        this.county = county;
    }

    public String getCounty()
    {
        return county;
    }
    public void setAddressDetails(String addressDetails)
    {
        this.addressDetails = addressDetails;
    }

    public String getAddressDetails()
    {
        return addressDetails;
    }
    public void setUpdateId(Long updateId)
    {
        this.updateId = updateId;
    }

    public Long getUpdateId()
    {
        return updateId;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }

    public String getExpressNo() {
        return expressNo;
    }

    public void setExpressNo(String expressNo) {
        this.expressNo = expressNo;
    }

    public String getApplyNo() {
        return applyNo;
    }

    public void setApplyNo(String applyNo) {
        this.applyNo = applyNo;
    }

    public Long getSysUserId() {
        return sysUserId;
    }

    public void setSysUserId(Long sysUserId) {
        this.sysUserId = sysUserId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("hospitalId", getHospitalId())
            .append("userId", getUserId())
            .append("name", getName())
            .append("sex", getSex())
            .append("cardNo", getCardNo())
            .append("hospitalCardNo", getHospitalCardNo())
            .append("receiveName", getReceiveName())
            .append("receiveMobile", getReceiveMobile())
            .append("province", getProvince())
            .append("city", getCity())
            .append("county", getCounty())
            .append("addressDetails", getAddressDetails())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("updateId", getUpdateId())
            .append("status", getStatus())
            .toString();
    }

    public String getFrontImagPath() {
        return frontImagPath;
    }

    public void setFrontImagPath(String frontImagPath) {
        this.frontImagPath = frontImagPath;
    }

    public String getBackImagePath() {
        return backImagePath;
    }

    public void setBackImagePath(String backImagePath) {
        this.backImagePath = backImagePath;
    }

    public String getPrintType() {
        return printType;
    }

    public void setPrintType(String printType) {
        this.printType = printType;
    }

    public String getHospitalName() {
        return hospitalName;
    }

    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }

    public String getPickWay() {
        return pickWay;
    }

    public void setPickWay(String pickWay) {
        this.pickWay = pickWay;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getStartapplyTime() {
        return startapplyTime;
    }

    public void setStartapplyTime(String startapplyTime) {
        this.startapplyTime = startapplyTime;
    }

    public String getEndapplyTime() {
        return endapplyTime;
    }

    public void setEndapplyTime(String endapplyTime) {
        this.endapplyTime = endapplyTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
}
